package com.agileboot.domain.airport.inspectionCheck.db;

import com.agileboot.common.core.base.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.Date;

@Getter
@Setter
@TableName("sir_inspection_check")
@ApiModel(value = "SirInspectionCheckEntity对象", description = "检查计划检查项")
public class SirInspectionCheckEntity extends BaseEntity<SirInspectionCheckEntity> {

    @ApiModelProperty("检查项ID")
    @TableId(value = "inspection_check_id", type = IdType.AUTO)
    private Long inspectionCheckId;

    @ApiModelProperty("检查计划ID")
    private Long inspectionId;

    @ApiModelProperty("自查库项ID")
    private Long selfcheckId;

    @ApiModelProperty("检查人")
    private Long inspectionUserId;

    @ApiModelProperty("检查结果")
    private String inspectionResult;

    @ApiModelProperty("存在问题")
    private byte[] inspectionQuestion;

    @ApiModelProperty("检查截止时间")
    private Date inspectionDeadlineTime;

    @ApiModelProperty("整改要求")
    private String rectificationRequire;

    @ApiModelProperty("直接原因")
    private String directCause;

    @ApiModelProperty("根本原因")
    private String fundamentalCause;

    @ApiModelProperty("纠正措施")
    private String correctMeasure;

    @ApiModelProperty("纠正措施-截止时间")
    private Date correctMeasureDeadlineTime;

    @ApiModelProperty("纠正措施-处理时间")
    private Date correctMeasureDealTime;

    @ApiModelProperty("纠正措施-处理人")
    private String correctMeasureDealPeople;

    @ApiModelProperty("纠正措施结果")
    private String correctMeasureResult;

    @ApiModelProperty("预防措施")
    private String preventionMeasure;

    @ApiModelProperty("预防措施-截止时间")
    private Date preventionMeasureDeadlineTime;

    @ApiModelProperty("预防措施-处理时间")
    private Date preventionMeasureDealTime;

    @ApiModelProperty("预防措施-处理人")
    private String preventionMeasureDealPeople;

    @ApiModelProperty("预防措施结果")
    private String preventionMeasureResult;

    @ApiModelProperty("创建者")
    private String createBy;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("处理类型")
    private String dealType;

    @ApiModelProperty("关联主键")
    private Long relationId;

    @ApiModelProperty("关联类型")
    private String relationType;

    @ApiModelProperty("检查开始时间")
    private Date startTime;

    @ApiModelProperty("检查结束时间")
    private Date endTime;

    @ApiModelProperty("反馈")
    private String feedback;

    @ApiModelProperty("正向证据")
    private byte[] positiveProof;

    @ApiModelProperty("检查项主键")
    private Long checkTermId;

    @ApiModelProperty("检查标准主键")
    private Long checkStandardId;

    @ApiModelProperty("检查项编码")
    private String checkTermCode;

    @ApiModelProperty("检查标准编码")
    private String checkStandardCode;

    @ApiModelProperty("检查意见")
    private String checkOpinion;

    @ApiModelProperty("电子签名")
    private String checkSign;

    @ApiModelProperty("检查对象ID")
    private Long inspectionDeptId;

    @ApiModelProperty("状态")
    private Integer status;

    @ApiModelProperty("处理结果")
    private String dealResult;

    @ApiModelProperty("责任单位")
    private Long dutyDeptId;

    @ApiModelProperty("整改部门")
    private Long curDealDeptId;

    private String tittle;

    @Override
    public Serializable pkVal() {
        return this.inspectionCheckId;
    }
}
